<?php
/**
 * Application level Controller
 *
 * This file is application-wide controller file. You can put all
 * application-wide controller-related methods here.
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.Controller
 * @since         CakePHP(tm) v 0.2.9
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
 */

App::uses('Controller', 'Controller');

/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */
class AppController extends Controller {
    public $components = array('Cookie','Session');
    
    public function beforeFilter() 
	{
		$this->_setLanguage();
		$this->_getSubMenu();
        $this->_getVideoLink();
        $this->_getContact();
        $this->_getSubBanner();
	}
	
	private function _setLanguage() 
	{
        $code = '_en';
        if(!$this->Session->check('Config.language')) {
            $this->Session->write('Config.language', 'eng');
        } else {
            $language = $this->Session->read('Config.language');
            if ($language == 'vie') $code = '';
		}

        $this->set('code', $code);        
    }
	
	private function _getSubMenu() 
	{
		$this->loadModel('ProductBrand');
		$this->ProductBrand->recursive = -1;
		$this->set('brands', $this->ProductBrand->find('all'));
	}
    
    private function _getVideoLink()
    {
        $this->loadModel('Video');
        $this->set('video', $this->Video->find('first', array('order' => 'rand()')));
    }
    
    private function _getContact()
    {
        $this->loadModel('Contact');
        $this->set('contact', $this->Contact->find('first'));
    }
    
    private function _getSubBanner() 
    {
        $this->loadModel('Bannersub');
        $this->set('bannersub', $this->Bannersub->find('all'));
    }
}
